RegExp প্যাটার্নে \w মেটাচরিত্রটি এমন ওয়ার্ড ক্যারেক্টার ম্যাচ করতে ব্যবহৃত হয়, যা হলো অক্ষর, সংখ্যা অথবা আন্ডারস্কোর (_)। এটি একটি শর্তযুক্ত মেটাচরিত্র যা সাধারণত একটি বা একাধিক অক্ষরের জন্য ব্যবহৃত হয়।
\w এর ব্যবহার
\w স্ট্রিংয়ের মধ্যে কোনো ওয়ার্ড ক্যারেক্টার যেমন এলফাবেট (A-Z, a-z), সংখ্যা (0-9), এবং আন্ডারস্কোর (_) মেলে। এর মধ্যে বিশেষ কোনো সীমাবদ্ধতা থাকে না, অর্থাৎ, এটি সাধারণত কেস-সেনসিটিভ এবং শুধুমাত্র এ ধরনের চরিত্রের সাথেই মেলে।
উদাহরণ:
let regex = /\w+/;
let str = "Hello_world123";
console.log(regex.test(str)); // true
এখানে, \w+ প্যাটার্নটি স্ট্রিং "Hello_world123" এর মধ্যে প্রথম অংশ "Hello_world123" পুরো অংশটি মেলাচ্ছে, কারণ এটি সমস্ত বৈধ ওয়ার্ড ক্যারেক্টার ধারণ করছে (অক্ষর, সংখ্যা এবং আন্ডারস্কোর)।
\w এর সাথে অন্যান্য মেটাচরিত্রের ব্যবহার
এক বা একাধিক ওয়ার্ড ক্যারেক্টার
+ চিহ্ন ব্যবহার করলে এক বা একাধিক ওয়ার্ড ক্যারেক্টার মেলানো যাবে।
let regex = /\w+/;
let str = "abc123";
console.log(regex.test(str)); // true
একক ওয়ার্ড ক্যারেক্টার
\w একক চরিত্রের সাথে মিলবে, অর্থাৎ এটি শুধুমাত্র একটি অক্ষর, সংখ্যা বা আন্ডারস্কোর মেলাতে সক্ষম হবে।
let regex = /\w/;
let str = "abc";
console.log(regex.test(str)); // true
\w এর সীমাবদ্ধতা
\wশুধুমাত্র ল্যাটিন অক্ষর (A-Z, a-z), সংখ্যা (0-9), এবং আন্ডারস্কোর (_) সমর্থন করে। এর মধ্যে স্পেস, বিশেষ চিহ্ন (যেমন @, #, $, %, &, ইত্যাদি), বা অক্ষরভিত্তিক ভাষার অক্ষর (যেমন বাংলা বা আরবি অক্ষর) মেলানো হয় না।
উদাহরণ:
let regex = /\w+/;
let str = "hello@world";
console.log(regex.test(str)); // false
এখানে, \w+ "hello@world" স্ট্রিংয়ের মধ্যে @ চিহ্নের কারণে মিল খুঁজে পাচ্ছে না, কারণ এটি একটি বিশেষ চিহ্ন এবং \w শুধুমাত্র অক্ষর, সংখ্যা এবং আন্ডারস্কোরের সাথে মেলে।
সারাংশ
\w RegExp মেটাচরিত্রটি যেকোনো ওয়ার্ড ক্যারেক্টার (অক্ষর, সংখ্যা বা আন্ডারস্কোর) মেলাতে ব্যবহৃত হয়। এটি A-Z, a-z, 0-9, এবং _ (আন্ডারস্কোর) সহ যেকোনো বৈধ ওয়ার্ড ক্যারেক্টারের জন্য কাজ করে। এটি সাধারণত একক বা একাধিক অক্ষরের জন্য ব্যবহৃত হয়, এবং স্পেস বা বিশেষ চিহ্ন এর সাথে মেলে না।
Read more